/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package Controller;

import Adecot.RequestBean1;
import Model.BD.DAO;
import Model.Empresa;
import Model.ItemPedidoEmpresa;
import javax.faces.event.ValueChangeEvent;
import Controller.Facade.*;
import java.util.ArrayList;
import java.util.List;

/**
 *
 * @author BBG
 */
public class ItemPedidoEmpresaBO extends RequestBean1 {

   private ItemPedidoEmpresa itemPedidoEmpresa = new ItemPedidoEmpresa();
   private double caixaTotal;

   public ItemPedidoEmpresa getItemPedidoEmpresa() {
      return itemPedidoEmpresa;
   }

   public void setItemPedidoEmpresa(ItemPedidoEmpresa itemPedidoEmpresa) {
      this.itemPedidoEmpresa = itemPedidoEmpresa;
   }

   public DAO<ItemPedidoEmpresa> getDAO() {
      return new DAO<ItemPedidoEmpresa>(ItemPedidoEmpresa.class);
   }

   public double getCaixaTotal() {
      double qntd = 0.00, pesoDouble = 0.00, conta = 0.00;
      try {
         qntd = itemPedidoEmpresa.getQuantidade();
         pesoDouble = itemPedidoEmpresa.getPesoCaixa();
      } catch (Exception e) {
         System.out.println(e);
      }
      if ((qntd != 0) && (pesoDouble != 0)) {
         conta = (qntd / pesoDouble);
      }
      return conta;
   }

   public void setCaixaTotal(double caixaTotal) {
      this.caixaTotal = caixaTotal;
   }

   public void campoPesoCaixa_processValueChange(ValueChangeEvent vce) {

      itemPedidoEmpresa.setQuantidade(Double.parseDouble(vce.getNewValue().toString()));
      getCaixaTotal();
   }

   public void campoQuantidade_processValueChange(ValueChangeEvent vce) {
      itemPedidoEmpresa.setPesoCaixa(Double.parseDouble(vce.getNewValue().toString()));
      getCaixaTotal();
   }

   public void comboEmpresa_processValueChange(ValueChangeEvent vce) {
      try {
         itemPedidoEmpresa.getPedidoEmpresa().setEmpresa((Empresa) new FacadeIMPL(EmpresaBO.class).retornaObjetoCodigo("codEmpresa", Integer.parseInt(vce.getNewValue().toString())));

      } catch (Exception e) {
      }
   }

   public void comboProduto_processValueChange(ValueChangeEvent vce) {
      try {

         itemPedidoEmpresa.setProduto((Model.Produto) new FacadeIMPL(ProdutoBO.class).
                 retornaObjetoCodigo("codProduto", Integer.parseInt(vce.getNewValue().toString())));
         System.out.println(itemPedidoEmpresa.getProduto().getClassificacao().getNome());
         System.out.println(itemPedidoEmpresa.getProduto().getVariedade().getNome());
      } catch (Exception e) {
      }
   }
}
